Platform Explorer / Nuxeo Platform 2021

Contribution org.nuxeo.ecm.platform.forms.layouts.webapp.base--layouts

This contribution is part of XML component org.nuxeo.ecm.platform.forms.layouts.webapp.base inside nuxeo-platform-webapp-base-2021.1.jar /OSGI-INF/layouts-contrib.xml

Extension Point

Extension point layouts of component WebLayoutManager.

Registration Order

9
The registration order represents the order in which this contribution was registered on its target extention point. This will impact the override/merge behaviour when it is implemented on the target service, and is useful for proper customization of existing contributions.
You can influence this order by adding "require" tags in the containing component declaration, to make sure it is resolved after another component (see "Resolution Order" on components).

Contributed Items

  • <layout name="gridUserLayout">
          <templates>
            <template mode="any">
              /layouts/layout_grid_template.xhtml
            </template>
          </templates>
          <rows>
            <row>
              <widget>userPanelTop</widget>
            </row>
            <row>
              <widget>userPanelLeft</widget>
              <widget>userPanelRight</widget>
            </row>
            <row>
              <widget>userPanelBottom</widget>
            </row>
          </rows>
        </layout>
  • <layout name="user">
          <templates>
            <template mode="any">/layouts/layout_default_template.xhtml
            </template>
          </templates>
          <rows>
            <row>
              <widget>username</widget>
            </row>
            <row>
              <widget>firstname</widget>
            </row>
            <row>
              <widget>lastname</widget>
            </row>
            <row>
              <widget>company</widget>
            </row>
            <row>
              <widget>email</widget>
            </row>
            <row>
              <widget>groups</widget>
            </row>
            <row>
              <widget>groupsValidator</widget>
            </row>
            <row>
              <widget>vgroups</widget>
            </row>
            <row>
              <widget>passwordMatcher</widget>
            </row>
            <row>
              <widget>userAdditionalWidgets</widget>
            </row>
          </rows>
          <widget name="username" type="text">
            <labels>
              <label mode="any">username</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="user">username</field>
            </fields>
            <widgetModes>
              <mode value="create">edit</mode>
              <mode value="editPassword">********</mode>
              <mode value="any">view</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <property name="required">true</property>
              <property name="styleClass">dataInputText</property>
              <property name="validator">
                #{userManagementActions.validateUserName}
              </property>
            </properties>
          </widget>
          <widget name="firstname" type="text">
            <labels>
              <label mode="any">firstName</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="user">firstName</field>
            </fields>
            <widgetModes>
              <mode value="editPassword">********</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <property name="styleClass">dataInputText</property>
            </properties>
          </widget>
          <widget name="lastname" type="text">
            <labels>
              <label mode="any">lastName</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="user">lastName</field>
            </fields>
            <widgetModes>
              <mode value="editPassword">********</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <property name="styleClass">dataInputText</property>
            </properties>
          </widget>
          <widget name="company" type="text">
            <labels>
              <label mode="any">company</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="user">company</field>
            </fields>
            <widgetModes>
              <mode value="editPassword">********</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <property name="styleClass">dataInputText</property>
            </properties>
          </widget>
          <widget name="email" type="text">
            <labels>
              <label mode="any">email</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="user">email</field>
            </fields>
            <widgetModes>
              <mode value="editPassword">********</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <property name="required">true</property>
              <property name="styleClass">dataInputText</property>
            </properties>
          </widget>
          <widget name="groups" type="multipleUsersSuggestion">
            <labels>
              <label mode="any">label.userManager.userGroups</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="user">groups</field>
            </fields>
            <widgetModes>
              <mode value="edit">
                #{nxu:test(webActions.checkFilter('usersGroupsManagementAccess'),
                'edit', 'view')}
              </mode>
              <mode value="editPassword">********</mode>
            </widgetModes>
            <properties widgetMode="any">
              <property name="hideVirtualGroups">true</property>
              <property name="userSuggestionSearchType">GROUP_TYPE</property>
            </properties>
          </widget>
    
          <widget name="groupsValidator" type="template">
            <labels>
              <label mode="any"/>
            </labels>
            <translated>true</translated>
            <widgetModes>
              <mode value="create">edit</mode>
              <mode value="editPassword">********</mode>
              <mode value="view">hidden</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <!-- XXX: depends on firstPassword and secondPassword widget names -->
              <property name="template">
                /widgets/user_groups_validation_widget_template.xhtml
              </property>
            </properties>
          </widget>
    
          <widget name="vgroups" type="userVirtualGroups">
            <labels>
              <label mode="any">label.userManager.userVirtualGroups</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="user">username</field>
            </fields>
            <widgetModes>
              <mode value="create">hidden</mode>
              <mode value="editPassword">********</mode>
            </widgetModes>
          </widget>
           <widget name="passwordMatcher" type="template">
            <labels>
              <label mode="create">label.immediateCreation</label>
              <label mode="any"/>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="user">password</field>
            </fields>
            <widgetModes>
              <mode value="create">edit</mode>
              <mode value="editPassword">********</mode>
              <mode value="any">hidden</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <property name="required">true</property>
              <property name="styleClass">dataInputText</property>
              <property name="template">
                /widgets/user_password_widget_template.xhtml
              </property>
            </properties>
            <properties widgetMode="editPassword">********<property name="required">true</property>
              <property name="styleClass">dataInputText</property>
              <property name="template">
                /widgets/user_password_validation_widget_template.xhtml
              </property>
            </properties>
          </widget>
        </layout>
  • <layout name="profile_password">********<templates>
            <template mode="any">/layouts/layout_default_template.xhtml
            </template>
          </templates>
          <rows>
            <row>
              <widget>profilePasswordMatcher</widget>
            </row>
          </rows>
          <widget name="profilePasswordMatcher" type="template">
            <labels>
              <label mode="any"/>
            </labels>
            <fields>
              <field schema="user">password</field>
            </fields>
            <widgetModes>
              <mode value="editProfilePassword">********</mode>
              <mode value="any">hidden</mode>
            </widgetModes>
            <properties widgetMode="editProfilePassword">********<property name="required">true</property>
              <property name="styleClass">dataInputText</property>
              <property name="template">
                /widgets/user_profile_password_validation_widget_template.xhtml
              </property>
            </properties>
          </widget>
        </layout>
  • <layout name="user_registration">
          <templates>
            <template mode="any">/layouts/layout_default_template.xhtml
            </template>
          </templates>
          <rows>
            <row>
              <widget>username</widget>
            </row>
            <row>
              <widget>firstname</widget>
            </row>
            <row>
              <widget>lastname</widget>
            </row>
            <row>
              <widget>company</widget>
            </row>
            <row>
              <widget>email</widget>
            </row>
            <row>
              <widget>groups</widget>
            </row>
            <row>
              <widget>groupsValidator</widget>
            </row>
            <row>
              <widget>vgroups</widget>
            </row>
          </rows>
          <widget name="username" type="text">
            <labels>
              <label mode="any">username</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="userinfo">login</field>
            </fields>
            <widgetModes>
              <mode value="create">edit</mode>
              <mode value="editPassword">********</mode>
              <mode value="any">view</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <property name="required">true</property>
              <property name="styleClass">dataInputText</property>
              <property name="validator">
                #{userManagementActions.validateUserName}
              </property>
            </properties>
          </widget>
          <widget name="firstname" type="text">
            <labels>
              <label mode="any">firstName</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="userinfo">firstName</field>
            </fields>
            <widgetModes>
              <mode value="editPassword">********</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <property name="styleClass">dataInputText</property>
            </properties>
          </widget>
          <widget name="lastname" type="text">
            <labels>
              <label mode="any">lastName</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="userinfo">lastName</field>
            </fields>
            <widgetModes>
              <mode value="editPassword">********</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <property name="styleClass">dataInputText</property>
            </properties>
          </widget>
          <widget name="company" type="text">
            <labels>
              <label mode="any">company</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="userinfo">company</field>
            </fields>
            <widgetModes>
              <mode value="editPassword">********</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <property name="styleClass">dataInputText</property>
            </properties>
          </widget>
          <widget name="email" type="text">
            <labels>
              <label mode="any">email</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="userinfo">email</field>
            </fields>
            <widgetModes>
              <mode value="editPassword">********</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <property name="required">true</property>
              <property name="styleClass">dataInputText</property>
            </properties>
          </widget>
          <widget name="groups" type="multipleUsersSuggestion">
            <labels>
              <label mode="any">label.userManager.userGroups</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="userinfo">groups</field>
            </fields>
            <widgetModes>
              <mode value="edit">
                #{nxu:test(webActions.checkFilter('usersGroupsManagementAccess'),
                'edit', 'view')}
              </mode>
              <mode value="editPassword">********</mode>
            </widgetModes>
            <properties widgetMode="any">
              <property name="hideVirtualGroups">true</property>
              <property name="userSuggestionSearchType">GROUP_TYPE</property>
            </properties>
          </widget>
          <widget name="groupsValidator" type="template">
            <labels>
              <label mode="any"/>
            </labels>
            <translated>true</translated>
            <widgetModes>
              <mode value="create">edit</mode>
              <mode value="editPassword">********</mode>
              <mode value="view">hidden</mode>
            </widgetModes>
            <properties widgetMode="edit">
              <!-- XXX: depends on firstPassword and secondPassword widget names -->
              <property name="template">
                /widgets/user_groups_validation_widget_template.xhtml
              </property>
            </properties>
          </widget>
          <widget name="vgroups" type="userVirtualGroups">
            <labels>
              <label mode="any">label.userManager.userVirtualGroups</label>
            </labels>
            <translated>true</translated>
            <fields>
              <field schema="userinfo">login</field>
            </fields>
            <widgetModes>
              <mode value="create">hidden</mode>
              <mode value="editPassword">********</mode>
            </widgetModes>
          </widget>
        </layout>
  • <layout name="group">
          <templates>
            <template mode="any">/layouts/layout_default_template.xhtml
            </template>
          </templates>
          <rows>
            <row>
              <widget>group_name</widget>
            </row>
            <row>
              <widget>group_label</widget>
            </row>
            <row>
              <widget>group_members</widget>
            </row>
            <row>
              <widget>group_subgroups</widget>
            </row>
          </rows>
        </layout>
  • <layout name="user_group_suggestion">
          <templates>
            <template mode="any">/layouts/layout_default_template.xhtml
            </template>
          </templates>
          <rows>
            <row>
              <widget>selection</widget>
            </row>
          </rows>
          <widget name="selection" type="multipleUsersSuggestion">
            <!-- add empty field to map layout value directly -->
            <fields>
              <field/>
            </fields>
            <labels>
              <label mode="any">label.security.usersOrGroups</label>
            </labels>
            <properties widgetMode="edit">
              <property name="hideHelpLabel">true</property>
              <property name="placeholder">label.security.search</property>
            </properties>
            <widgetModes>
              <mode value="create">edit</mode>
            </widgetModes>
          </widget>
        </layout>
  • <layout name="user_group_prefixed_suggestion">
          <templates>
            <template mode="any">/layouts/layout_default_template.xhtml
            </template>
          </templates>
          <rows>
            <row>
              <widget>selection</widget>
            </row>
          </rows>
          <widget name="selection" type="multipleUsersSuggestion">
            <!-- add empty field to map layout value directly -->
            <fields>
              <field/>
            </fields>
            <labels>
              <label mode="any">label.security.usersOrGroups</label>
            </labels>
            <properties widgetMode="edit">
              <property name="prefixed">true</property>
              <property name="hideHelpLabel">true</property>
              <property name="placeholder">label.security.search</property>
            </properties>
            <properties widgetMode="view">
              <property name="prefixed">true</property>
            </properties>
            <widgetModes>
              <mode value="create">edit</mode>
            </widgetModes>
          </widget>
        </layout>
  • <layout name="document_content_filter">
          <templates>
            <template mode="any">/layouts/layout_default_template.xhtml
            </template>
          </templates>
          <rows>
            <row>
              <widget>search_title</widget>
            </row>
            <row>
              <widget>search_modified_min</widget>
              <widget>search_modified_max</widget>
            </row>
          </rows>
        </layout>
  • <layout name="document_edit_form_options">
          <templates>
            <template mode="any">/layouts/layout_default_template.xhtml
            </template>
          </templates>
          <rows>
            <row>
              <widget>document_edit_comment</widget>
            </row>
            <row>
              <widget>document_edit_current_version</widget>
            </row>
            <row>
              <widget>document_edit_versioning_options</widget>
            </row>
          </rows>
        </layout>

XML Source

<extension point="layouts" target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager">

    <layout name="gridUserLayout">
      <templates>
        <template mode="any">
          /layouts/layout_grid_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>userPanelTop</widget>
        </row>
        <row>
          <widget>userPanelLeft</widget>
          <widget>userPanelRight</widget>
        </row>
        <row>
          <widget>userPanelBottom</widget>
        </row>
      </rows>
    </layout>

    <layout name="user">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>username</widget>
        </row>
        <row>
          <widget>firstname</widget>
        </row>
        <row>
          <widget>lastname</widget>
        </row>
        <row>
          <widget>company</widget>
        </row>
        <row>
          <widget>email</widget>
        </row>
        <row>
          <widget>groups</widget>
        </row>
        <row>
          <widget>groupsValidator</widget>
        </row>
        <row>
          <widget>vgroups</widget>
        </row>
        <row>
          <widget>passwordMatcher</widget>
        </row>
        <row>
          <widget>userAdditionalWidgets</widget>
        </row>
      </rows>
      <widget name="username" type="text">
        <labels>
          <label mode="any">username</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="user">username</field>
        </fields>
        <widgetModes>
          <mode value="create">edit</mode>
          <mode value="editPassword">********</mode>
          <mode value="any">view</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <property name="required">true</property>
          <property name="styleClass">dataInputText</property>
          <property name="validator">
            #{userManagementActions.validateUserName}
          </property>
        </properties>
      </widget>
      <widget name="firstname" type="text">
        <labels>
          <label mode="any">firstName</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="user">firstName</field>
        </fields>
        <widgetModes>
          <mode value="editPassword">********</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <property name="styleClass">dataInputText</property>
        </properties>
      </widget>
      <widget name="lastname" type="text">
        <labels>
          <label mode="any">lastName</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="user">lastName</field>
        </fields>
        <widgetModes>
          <mode value="editPassword">********</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <property name="styleClass">dataInputText</property>
        </properties>
      </widget>
      <widget name="company" type="text">
        <labels>
          <label mode="any">company</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="user">company</field>
        </fields>
        <widgetModes>
          <mode value="editPassword">********</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <property name="styleClass">dataInputText</property>
        </properties>
      </widget>
      <widget name="email" type="text">
        <labels>
          <label mode="any">email</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="user">email</field>
        </fields>
        <widgetModes>
          <mode value="editPassword">********</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <property name="required">true</property>
          <property name="styleClass">dataInputText</property>
        </properties>
      </widget>
      <widget name="groups" type="multipleUsersSuggestion">
        <labels>
          <label mode="any">label.userManager.userGroups</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="user">groups</field>
        </fields>
        <widgetModes>
          <mode value="edit">
            #{nxu:test(webActions.checkFilter('usersGroupsManagementAccess'),
            'edit', 'view')}
          </mode>
          <mode value="editPassword">********</mode>
        </widgetModes>
        <properties widgetMode="any">
          <property name="hideVirtualGroups">true</property>
          <property name="userSuggestionSearchType">GROUP_TYPE</property>
        </properties>
      </widget>

      <widget name="groupsValidator" type="template">
        <labels>
          <label mode="any"/>
        </labels>
        <translated>true</translated>
        <widgetModes>
          <mode value="create">edit</mode>
          <mode value="editPassword">********</mode>
          <mode value="view">hidden</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <!-- XXX: depends on firstPassword and secondPassword widget names -->
          <property name="template">
            /widgets/user_groups_validation_widget_template.xhtml
          </property>
        </properties>
      </widget>

      <widget name="vgroups" type="userVirtualGroups">
        <labels>
          <label mode="any">label.userManager.userVirtualGroups</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="user">username</field>
        </fields>
        <widgetModes>
          <mode value="create">hidden</mode>
          <mode value="editPassword">********</mode>
        </widgetModes>
      </widget>
       <widget name="passwordMatcher" type="template">
        <labels>
          <label mode="create">label.immediateCreation</label>
          <label mode="any"/>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="user">password</field>
        </fields>
        <widgetModes>
          <mode value="create">edit</mode>
          <mode value="editPassword">********</mode>
          <mode value="any">hidden</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <property name="required">true</property>
          <property name="styleClass">dataInputText</property>
          <property name="template">
            /widgets/user_password_widget_template.xhtml
          </property>
        </properties>
        <properties widgetMode="editPassword">********<property name="required">true</property>
          <property name="styleClass">dataInputText</property>
          <property name="template">
            /widgets/user_password_validation_widget_template.xhtml
          </property>
        </properties>
      </widget>
    </layout>

    <layout name="profile_password">********<templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>profilePasswordMatcher</widget>
        </row>
      </rows>
      <widget name="profilePasswordMatcher" type="template">
        <labels>
          <label mode="any"/>
        </labels>
        <fields>
          <field schema="user">password</field>
        </fields>
        <widgetModes>
          <mode value="editProfilePassword">********</mode>
          <mode value="any">hidden</mode>
        </widgetModes>
        <properties widgetMode="editProfilePassword">********<property name="required">true</property>
          <property name="styleClass">dataInputText</property>
          <property name="template">
            /widgets/user_profile_password_validation_widget_template.xhtml
          </property>
        </properties>
      </widget>
    </layout>

    <layout name="user_registration">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>username</widget>
        </row>
        <row>
          <widget>firstname</widget>
        </row>
        <row>
          <widget>lastname</widget>
        </row>
        <row>
          <widget>company</widget>
        </row>
        <row>
          <widget>email</widget>
        </row>
        <row>
          <widget>groups</widget>
        </row>
        <row>
          <widget>groupsValidator</widget>
        </row>
        <row>
          <widget>vgroups</widget>
        </row>
      </rows>
      <widget name="username" type="text">
        <labels>
          <label mode="any">username</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="userinfo">login</field>
        </fields>
        <widgetModes>
          <mode value="create">edit</mode>
          <mode value="editPassword">********</mode>
          <mode value="any">view</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <property name="required">true</property>
          <property name="styleClass">dataInputText</property>
          <property name="validator">
            #{userManagementActions.validateUserName}
          </property>
        </properties>
      </widget>
      <widget name="firstname" type="text">
        <labels>
          <label mode="any">firstName</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="userinfo">firstName</field>
        </fields>
        <widgetModes>
          <mode value="editPassword">********</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <property name="styleClass">dataInputText</property>
        </properties>
      </widget>
      <widget name="lastname" type="text">
        <labels>
          <label mode="any">lastName</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="userinfo">lastName</field>
        </fields>
        <widgetModes>
          <mode value="editPassword">********</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <property name="styleClass">dataInputText</property>
        </properties>
      </widget>
      <widget name="company" type="text">
        <labels>
          <label mode="any">company</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="userinfo">company</field>
        </fields>
        <widgetModes>
          <mode value="editPassword">********</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <property name="styleClass">dataInputText</property>
        </properties>
      </widget>
      <widget name="email" type="text">
        <labels>
          <label mode="any">email</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="userinfo">email</field>
        </fields>
        <widgetModes>
          <mode value="editPassword">********</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <property name="required">true</property>
          <property name="styleClass">dataInputText</property>
        </properties>
      </widget>
      <widget name="groups" type="multipleUsersSuggestion">
        <labels>
          <label mode="any">label.userManager.userGroups</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="userinfo">groups</field>
        </fields>
        <widgetModes>
          <mode value="edit">
            #{nxu:test(webActions.checkFilter('usersGroupsManagementAccess'),
            'edit', 'view')}
          </mode>
          <mode value="editPassword">********</mode>
        </widgetModes>
        <properties widgetMode="any">
          <property name="hideVirtualGroups">true</property>
          <property name="userSuggestionSearchType">GROUP_TYPE</property>
        </properties>
      </widget>
      <widget name="groupsValidator" type="template">
        <labels>
          <label mode="any"/>
        </labels>
        <translated>true</translated>
        <widgetModes>
          <mode value="create">edit</mode>
          <mode value="editPassword">********</mode>
          <mode value="view">hidden</mode>
        </widgetModes>
        <properties widgetMode="edit">
          <!-- XXX: depends on firstPassword and secondPassword widget names -->
          <property name="template">
            /widgets/user_groups_validation_widget_template.xhtml
          </property>
        </properties>
      </widget>
      <widget name="vgroups" type="userVirtualGroups">
        <labels>
          <label mode="any">label.userManager.userVirtualGroups</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field schema="userinfo">login</field>
        </fields>
        <widgetModes>
          <mode value="create">hidden</mode>
          <mode value="editPassword">********</mode>
        </widgetModes>
      </widget>
    </layout>

    <layout name="group">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>group_name</widget>
        </row>
        <row>
          <widget>group_label</widget>
        </row>
        <row>
          <widget>group_members</widget>
        </row>
        <row>
          <widget>group_subgroups</widget>
        </row>
      </rows>
    </layout>

    <layout name="user_group_suggestion">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>selection</widget>
        </row>
      </rows>
      <widget name="selection" type="multipleUsersSuggestion">
        <!-- add empty field to map layout value directly -->
        <fields>
          <field/>
        </fields>
        <labels>
          <label mode="any">label.security.usersOrGroups</label>
        </labels>
        <properties widgetMode="edit">
          <property name="hideHelpLabel">true</property>
          <property name="placeholder">label.security.search</property>
        </properties>
        <widgetModes>
          <mode value="create">edit</mode>
        </widgetModes>
      </widget>
    </layout>

    <layout name="user_group_prefixed_suggestion">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>selection</widget>
        </row>
      </rows>
      <widget name="selection" type="multipleUsersSuggestion">
        <!-- add empty field to map layout value directly -->
        <fields>
          <field/>
        </fields>
        <labels>
          <label mode="any">label.security.usersOrGroups</label>
        </labels>
        <properties widgetMode="edit">
          <property name="prefixed">true</property>
          <property name="hideHelpLabel">true</property>
          <property name="placeholder">label.security.search</property>
        </properties>
        <properties widgetMode="view">
          <property name="prefixed">true</property>
        </properties>
        <widgetModes>
          <mode value="create">edit</mode>
        </widgetModes>
      </widget>
    </layout>

    <layout name="document_content_filter">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>search_title</widget>
        </row>
        <row>
          <widget>search_modified_min</widget>
          <widget>search_modified_max</widget>
        </row>
      </rows>
    </layout>

    <layout name="document_edit_form_options">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>document_edit_comment</widget>
        </row>
        <row>
          <widget>document_edit_current_version</widget>
        </row>
        <row>
          <widget>document_edit_versioning_options</widget>
        </row>
      </rows>
    </layout>

  </extension>